Der Optimierer unter Postgres läßt sich uber die Kommandozeile mit
vacuumdb --analyze --verbose -f -d $DBNAME
starten und hilft bei regelmäßiger Anwendung, deshalb empfehlen wir, diesen Befehl als Cronjob jede Nacht oder einmal pro Woche auszuführen.
Wichtige Parameter sind die "Shared buffers" und der "Effective cache size". Shared buffers meinen nicht das gesamte zur Verfügung stehende RAM (das verwaltet das System), sondern den Arbeitsspeicher, der Postgres zum Zwischenspeichern benutzt, bevor Abfragen an den Kernel geschickt werden. Der Wert sollte nicht zu hoch gewählt werden, weil dann die Performance nachlässt. Faustregel: 6-15% des physischen RAM, man sollte aber auch in der Praxis viel probieren. Generell sollte man auf Datenbankservern mind. die Hälfte des verfügbaren physischen Rams für Postgres reservieren.
Beim Start des Postmasters lassen sich die "Shared buffers" zuweisen mit der Option
postmaster ?o "?B 128"
Dabei wird das Shared Memory von (standardmäßig) 64*8192 Bytes auf 128*8192 Bytes erhöht. Man kann den Parameter aber auch in der postgresql.conf setzen.
|
Beispielkonfiguration Postgres-RAM bei DB-Server mit 1 GB RAM unter Suse Linux |
in der Datei /etc/init.d/boot.local
geben Sie ein: Die Parameter lassen sich auch zur Laufzeit aus einer
root-Shell setzen. Danach ersetzen Sie in der postgresql.conf
die folgenden Parameter: Danach starten Sie Postgres neu. |
Effective Cache Size sollte als Faustregel 25% des physischen RAM betragen.
Diese und weitere Perfomance-Tipps für das jeweilige Betriebssystem finden Sie im PostgreSQL Administrator's Guide im Abschnitt "Run-Time Configuration".
Leider lassen sich Transaktionen für Postgres nicht abschalten, für ein (passives) Berichtssystem wie SuperX wären Transaktionen unbedeutend.
Autovacuum wurde mit Postrges 8 eingeführt. Für SuperX empfehlen wir dies nicht, denn das Vacuum wird in der Laderoutine ohnehin jede Nacht ausgeführt, und Autovacuum Prozesse stören die Laderoutine, teilweise emfpindlich.
| Seite 34 / 296 erstellt am
05.07.2010 HIS Hochschul-Informations-System GmbH, Goseriede 9, 30159 Hannover, Tel.: 0511/1220-0, Fax.: 0511/1220-250, E-Mail: info@his.de (Bei technischen Fragen wenden Sie sich bitte an webmaster@his.de.) |
Dieser Hypertext wurde mit dem MemText Autorensystem erzeugt: www.MemText.de